package com.aaa.dang.modules.checkin.dao;

import org.apache.ibatis.annotations.Mapper;
import org.apache.ibatis.annotations.Param;
import org.springframework.stereotype.Component;

import java.util.List;
import java.util.Map;

/**
 * @author 刘旭泽
 * @version 1.0
 * @date 2018/12/20
 * @description
 */
@Mapper
@Component
public interface CheckOutDao {
    /**
     * 查询所有用户
     * @param query
     * @return
     */

    Map<String,Object> selectUser(Map<String,Object> query);

    /**
     * 更改用户
     * @param query
     * @return
     */
    int updateUser(Map<String,Object> query);

    /**
     * 更改床位信息
     * @param id
     * @return
     */
    int updateBed(int id);

    /**
     * 查询房间信息
     * @param id
     * @return
     */
    Map<String,Object> selectRoom(int id);

    /**
     * 更改房间信息
     * @param roomid
     * @return
     */
    int updateRoom(int roomid);

    /**
     * 查询退宿时相差的日期
     * @param query
     * @return
     */

    Map<String,Object> selectDiffTime(Map<String,Object> query);

    /**
     * 查询user是否存在
     * @param query
     * @return
     */
    int selectExist(Map<String,Object> query);

    /**
     * 往记录表中插入数据
     * @param id
     * @param diff
     * @param aname
     * @return
     */

    int insertReturns(@Param("id") int id, @Param("diff") int diff,@Param("aname") String aname);

    /**
     * 得到历史记录的总条数
     * @param query
     * @return
     */
    int getAllHistoryCount(Map<String,Object> query);

    /**
     * 得到所有历史记录
     * @param query
     * @return
     */
    List<Map<String,Object>> getAllH(Map<String,Object> query);

    /**
     * 通过roomid 查询入住人数
     * @param roomid
     * @return
     */
    int selectRoomForNum(int roomid);

    /**
     *更改房间信息
     * @param roomid
     * @return
     */
    int updateRoomByNum(int roomid);

    /**
     * 通过手机号获取用户信息
     * @param query
     * @return
     */

    Map<String,Object> getMsgByPhone(Map<String,Object> query);
}
